package xyz.ssf.cloud.project.system.service;

import java.util.List;
import xyz.ssf.cloud.common.core.domain.PageResult;
import xyz.ssf.cloud.project.system.domain.LoginLogQuery;
import xyz.ssf.cloud.project.system.domain.SysLoginLog;

/**
 * 系统登录日志服务接口
 * 
 * @author ssf
 */
public interface ISysLoginLogService {
    /**
     * 查询系统登录日志集合
     * 
     * @param loginLog 登录日志对象
     * @return 登录记录集合
     */
    List<SysLoginLog> selectLoginLogList(SysLoginLog loginLog);
    
    /**
     * 分页查询系统登录日志
     * 
     * @param query 查询参数
     * @return 分页结果
     */
    PageResult<SysLoginLog> selectLoginLogPage(LoginLogQuery query);

    /**
     * 新增系统登录日志
     * 
     * @param loginLog 登录日志对象
     * @return 结果
     */
    int insertLoginLog(SysLoginLog loginLog);

    /**
     * 查询系统登录日志详细
     * 
     * @param id 登录ID
     * @return 登录日志对象
     */
    SysLoginLog selectLoginLogById(Long id);

    /**
     * 批量删除系统登录日志
     * 
     * @param ids 需要删除的登录日志ID
     * @return 结果
     */
    int deleteLoginLogByIds(Long[] ids);
    
    /**
     * 删除系统登录日志
     * 
     * @param id 需要删除的登录日志ID
     * @return 结果
     */
    int deleteLoginLogById(Long id);

    /**
     * 清空系统登录日志
     * 
     * @return 结果
     */
    int cleanLoginLog();
} 